package com.company.eos.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.company.eos.common.util.PageUtils;
import com.company.eos.domain.*;

import java.util.HashMap;

/**
 * @author Real
 * @description 针对表【tb_audit_detail(OA审批流详情表)】的数据库操作Service
 * @createDate 2022-04-28 13:00:00
 */
public interface AuditDetailService extends IService<AuditDetail> {

    /**
     * 新增离职审批
     *
     * @param quit
     * @return
     */
    int insertAuditQuit(AuditQuit quit, AuditFlow flow);

    /**
     * 新增请假审批
     *
     * @param
     * @return
     */
    int insertAuditLeave(AuditLeave auditLeave, AuditFlow flow);

    /**
     * 新增报销审批
     *
     * @param
     * @return
     */
    int insertAuditExpense(AuditExpense expense, AuditFlow flow);

    /**
     * 新增会议申请
     *
     * @param meeting 会议
     * @param flow    审批流
     * @return 新增行数
     */
    int insertAuditMeeting(AuditMeeting meeting, AuditFlow flow);

    /**
     * 分页查询审批详情
     *
     * @param param
     * @return
     */
    PageUtils searchTaskByPage(HashMap param);

    /**
     * 查询审批详情
     *
     * @param param
     * @return
     */
    HashMap searchAuditContent(HashMap param);

    /**
     * 审批任务
     *
     * @return
     */
    void auditTask(HashMap param);

    /**
     * 删除审批任务
     *
     * @param flowId
     * @return
     */
    int deleteAudit(int flowId);

}
